package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.system.domain.EpmInformation;
import com.ruoyi.system.domain.EpmInformationHistory;

/**
 * 员工历史信息Service接口
 * 
 * @author ruoyi
 * @date 2024-05-21
 */
public interface IEpmInformationHistoryService 
{
    /**
     * 查询员工历史信息
     * 
     * @param userId 员工历史信息主键
     * @return 员工历史信息
     */
    public List<EpmInformationHistory> selectEpmInformationHistoryById(int userId);

    /**
     * 记录员工信息修改历史
     *
     * @param epmInformationHistory 员工历史信息
     * @return 结果
     */
    public int insertEpmInformationHistory(EpmInformationHistory epmInformationHistory,int operation_status);





    /**
     * 查询员工历史信息列表
     *
     * @param epmInformationHistory 员工历史信息
     * @return 员工历史信息集合
     */
    public List<EpmInformation> selectEpmInformationHistoryList(EpmInformationHistory epmInformationHistory);




    /**
     * 检验部门是否修改，如果修改了，就进行记录，
     *
     * @param epmInformation 员工信息
     * @return 员工历史信息
     */
    public void check_dept_change(EpmInformation epmInformation, EpmInformation epmInformation_ord);


    /**
     * 检验岗位是否修改，如果修改了，就进行记录，
     *
     * @param epmInformation 员工信息
     * @return 员工历史信息
     */
    public void check_post_change(EpmInformation epmInformation, EpmInformation epmInformation_ord);

    public boolean check_post_equal(Long[] a, Long[] b);

    public  String  Generate_post_record(Long[] a, Long[] b);

    public void check_Information_change(EpmInformation EpmInformation1, EpmInformation EpmInformation2);
    public void check_change(EpmInformation epmInformation);
    public  boolean  check_Information_equal(EpmInformation EpmInformation1,EpmInformation EpmInformation2);

    public void insert_epm_out(List<Integer> userIds,String Username);
//    /**
//     * 新增员工历史信息
//     *
//     * @param epmInformationHistory 员工历史信息
//     * @return 结果
//     */
//    public int insertEpmInformationHistory(EpmInformationHistory epmInformationHistory);
//
//    /**
//     * 修改员工历史信息
//     *
//     * @param epmInformationHistory 员工历史信息
//     * @return 结果
//     */
//    public int updateEpmInformationHistory(EpmInformationHistory epmInformationHistory);
//
//    /**
//     * 批量删除员工历史信息
//     *
//     * @param ids 需要删除的员工历史信息主键集合
//     * @return 结果
//     */
//    public int deleteEpmInformationHistoryByIds(Long[] ids);
//
//    /**
//     * 删除员工历史信息信息
//     *
//     * @param id 员工历史信息主键
//     * @return 结果
//     */
//    public int deleteEpmInformationHistoryById(Long id);
}
